home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Amiga Magazin: Amiga-CD 1996 November & December
/
Amiga-CD 1996 #11-12.iso
/
pd-disketten
/
dms-gepackt
/
3_96
/
apd-3-96-2.dms
/
apd-3-96-2.adf
/
Tips&Tricks
/
FAX.rexx
next >
Wrap
OS/2 REXX Batch file
|
1996-02-26
|
5KB
|
161 lines
/* AREXX-Script zum Faxen von GoldED3 aus:
Es muß ein Block markiert sein (nur der Block wird in ein Fax umgewandelt)
Das Programm list die Faxnummern aus dem "Telefonbuch"
(Datei GPFax:GPFax_pho und zeigt sie in einem Listview-Requester an. */
options results
if ~ show("L","rexxsupport.library") then do
if ~ addlib("rexxsupport.library",0,-30,0) then exit
end
address "GOLDED.1"
'LOCK CURRENT'
'QUERY MARKED'
m=result
if m='FALSE' then do
'REQUEST TITLE "FAX" BODY "Es muß ein Block markiert sein!" BUTTON "ABBRUCH" HIDE=FALSE'
signal ende
end
'REQUEST TITLE "FAX" BODY "Name für die Fax-Datei:" BUTTON "WEITER|ABBRUCH" STRING'
datei=result
if datei="" | rc>0 then signal ende
datei="T:"||datei
'SAVE BLOCK NAME '||d2c(34)||datei||d2c(34)
address command
if ~ show("P","REXX_GPFAX") then do
"c:run >nil: GPFAX:GPFAX -Z -Q -F5"
do while ~ show("P","REXX_GPFAX")
"c:wait 1"
end
end
address "REXX_GPFAX"
'CONVERT '||datei
r=rc;na=result
tx="Faxdatei|"||na||"|anzeigen?"
/* --- Fax anzeigen und ev. senden --- */
if r=0 then do
address "GOLDED.1"
'REQUEST TITLE "FAX" BODY '||d2c(34)||tx||d2c(34) BUTTON "JA|NEIN"
r=result
if r~=0 then do
address "REXX_GPFAX"
'VIEWFAX '||na
end
address command
"C:DELETE "||datei||" quiet"
address "GOLDED.1"
e=open("phonebook","GPFAX:gpfax_pho",READ)
if e=0 then signal ende
nr.=""
na.=""
ko.=""
i=1
do while eof("phonebook")=0
eintrag=readch("phonebook",526)
eintrag=right(eintrag,518)
na.i=compress(left(eintrag,40),d2c(0)||" ")
eintrag=right(eintrag,478)
nr.i=compress(left(eintrag,21),d2c(0))
i=i+1
end
anzahl=i-2
e=open("out","T:faxlist.rexx",WRITE)
if e=0 then signal ende
e=writeln("out","/* */")
e=writeln("out","address 'GOLDED.1'")
e=writeln("out","options results")
e=writeln("out","'REQLIST TITLE Liste_der_Faxnummern ENTRY ',")
do i=1 to anzahl-1
e=writeln("out",d2c(34)||na.i||d2c(34)||",")
end
e=writeln("out",d2c(34)||na.anzahl||d2c(34))
e=writeln("out","if rc=0 then do")
tx='wahl=result'||d2c(10)||"wahl=wahl+1"||d2c(10)
tx=tx||'e=open("tmp","T:faxnummer",WRITE)'||d2c(10)
tx=tx||'e=writeln("tmp",wahl)'||d2c(10)
tx=tx||'e=close("tmp")'||d2c(10)
tx=tx||'end'
e=writeln("out",tx)
e=close("out")
e=close("phonebook")
address command
'c:RX T:faxlist.rexx'
address "GOLDED.1"
e=open("in","T:Faxnummer",READ)
if e=0 then signal ende0
nn=readln("in")
faxnr=nr.nn /* hier die Fax-Nummer aus der Liste! */
e=close("in")
if faxnr~="" then do
tx=d2c(34)||"Senden an "||na.nn||"|(Fax-Nummer: "||faxnr||")?"||d2c(34)
'REQUEST TITLE "FAX" BODY '||tx BUTTON "SENDEN|ABBRECHEN"
r=result
if r~=0 then do
address "REXX_GPFAX"
'SENDFAX' na 'TO' faxnr
if rc=0 then do
'REPORTLOG T 5'
zeit=result
'REPORTLOG T 7'
seiten=result
'REPORTLOG T 6'
dauer=result
tx="FAX erfolgreich gesendet!|Empfänger: "||na.nn
tx=tx||"|Zeit: "||zeit
tx=tx||"|Übertragene Seiten: "||seiten
tx=tx||"|Übertragungsdauer: "||dauer||" s"
/* --- Dateilänge berechnen --- */
bytes=0
do i=1 to seiten
fxnr=right(i,2,"0")
fx=statef(na||".p"||fxnr)
faxlen=subword(fx,2,1)
bytes=bytes+faxlen
end
tx=tx||"|Fax-Datei(en): "||bytes||" bytes"
tx=d2c(34)||tx||d2c(34)
address "GOLDED.1"
'REQUEST TITLE "FAX" BODY '||tx BUTTON "OK"
end
/* --- Fehler beim Senden --------------------- */
else do
address "GOLDED.1"
'REQUEST TITLE "FAX" BODY "Beim FAX-Versand|ist ein Fehler aufgetreten!" BUTTON "OK"'
signal ende
end
end
end
end
/* --- Fehler beim Konvertieren in eine Fax-Datei --- */
else do
address "GOLDED.1"
'REQUEST TITLE "FAX" BODY "Fehler beim Erzeugen der FAX-Datei"'
signal ende
end
/* --- Fertig! --- */
ende0:
'REQUEST TITLE "FAX" BODY "FAX erstellen/senden|abgeschlossen!" BUTTON "OK"'
ende:
address "GOLDED.1"
'UNLOCK'
if exists("T:Faxlist.rexx") then do
'FILE NAME "T:Faxlist.rexx" DELETE FORCE'
end
if exists("T:Faxnummer") then do
'FILE NAME "T:Faxnummer" DELETE FORCE'
end
if show("P","REXX_GPFAX") then do
address "REXX_GPFAX"
'QUITFAX'
end
exit